package com.ceair.flight.refund.location.model;

import com.ceair.flight.refund.util.DateUtil;
import com.ceair.flight.refund.util.StringUtil;
import com.ceair.muservice.common.dto.AbstractBaseDO;

import java.math.BigDecimal;
import java.util.HashSet;
import java.util.Set;

/**
 * emd订单
 * 
 * @author rujun
 *
 */
public class EmdOrderDO extends AbstractBaseDO {

	private static final long serialVersionUID = 8121532938069866952L;
	// EMD订单号
	private String emdOrderNo;
	// 大订单号
	private String orderNo;
	// 大工单号
	private String jobOrderNo;
	// 订单状态 2 等待支付 3等待开票 4已开票 5开票失败 6已取消 7异常 8差错退款9支付中
	private String orderSt;
	// 订单渠道
	private String channel;
	// 站点
	private String site;
	// 来源IP
	private String sourceIp;
	// 联系人姓名
	private String contactNm;
	// 联系人电话
	private String contactTel;
	// 联系邮箱
	private String contactEmail;
	// 票面价
	private BigDecimal FCNY;
	// 实付价
	private BigDecimal SCNY;
	// 币种
	private String currency;
	// IATA
	private String iata;
	// OFFICE_NO
	private String officeNo;
	// 积分总额
	private BigDecimal pointAmount;
	// 积分种类
	private String pointTp;
	// 手机国家码
	private String phoneCountry;
	// EMD旅客
	private Set<EmdPassengerDO> emdPaxDto = new HashSet<EmdPassengerDO>();

	private String remark;

	private String refundTicketNo;
	
	/**
     * 来源
     * @return
     */
    private String source;
    
    /**
     * 国家
     * @return
     */
    private String country;
    
    /**
     * 语言
     * @return
     */
    private String language;

	public String getEmdOrderNo() {
		return emdOrderNo;
	}

	public void setEmdOrderNo(String emdOrderNo) {
		this.emdOrderNo = emdOrderNo;
	}

	public String getOrderNo() {
		return orderNo;
	}

	public void setOrderNo(String orderNo) {
		this.orderNo = orderNo;
	}

	public String getJobOrderNo() {
		return jobOrderNo;
	}

	public void setJobOrderNo(String jobOrderNo) {
		this.jobOrderNo = jobOrderNo;
	}

	public String getOrderSt() {
		return orderSt;
	}

	public void setOrderSt(String orderSt) {
		this.orderSt = orderSt;
	}

	public String getChannel() {
		return channel;
	}

	public void setChannel(String channel) {
		this.channel = channel;
	}

	public String getSite() {
		return site;
	}

	public void setSite(String site) {
		this.site = site;
	}

	public String getSourceIp() {
		return sourceIp;
	}

	public void setSourceIp(String sourceIp) {
		this.sourceIp = sourceIp;
	}

	public String getContactNm() {
		return contactNm;
	}

	public void setContactNm(String contactNm) {
		this.contactNm = contactNm;
	}

	public String getContactTel() {
		return contactTel;
	}

	public void setContactTel(String contactTel) {
		this.contactTel = contactTel;
	}

	public String getContactEmail() {
		return contactEmail;
	}

	public void setContactEmail(String contactEmail) {
		this.contactEmail = contactEmail;
	}

	public BigDecimal getFCNY() {
		return FCNY;
	}

	public void setFCNY(BigDecimal FCNY) {
		this.FCNY = FCNY;
	}

	public BigDecimal getSCNY() {
		return SCNY;
	}

	public void setSCNY(BigDecimal SCNY) {
		this.SCNY = SCNY;
	}

	public String getCurrency() {
		return currency;
	}

	public void setCurrency(String currency) {
		this.currency = currency;
	}

	public String getIata() {
		return iata;
	}

	public void setIata(String iata) {
		this.iata = iata;
	}

	public String getOfficeNo() {
		return officeNo;
	}

	public void setOfficeNo(String officeNo) {
		this.officeNo = officeNo;
	}

	public BigDecimal getPointAmount() {
		return pointAmount;
	}

	public void setPointAmount(BigDecimal pointAmount) {
		this.pointAmount = pointAmount;
	}

	public String getPointTp() {
		return pointTp;
	}

	public void setPointTp(String pointTp) {
		this.pointTp = pointTp;
	}

	public String getPhoneCountry() {
		return phoneCountry;
	}

	public void setPhoneCountry(String phoneCountry) {
		this.phoneCountry = phoneCountry;
	}

	public Set<EmdPassengerDO> getEmdPaxDto() {
		return emdPaxDto;
	}

	public void setEmdPaxDto(Set<EmdPassengerDO> emdPaxDto) {
		this.emdPaxDto = emdPaxDto;
	}

	public String getRemark() {
		return remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}

	public String getRefundTicketNo() {
		return refundTicketNo;
	}

	public void setRefundTicketNo(String refundTicketNo) {
		this.refundTicketNo = refundTicketNo;
	}

	public String getSource() {
		return source;
	}

	public void setSource(String source) {
		this.source = source;
	}

	public String getCountry() {
		return country;
	}

	public void setCountry(String country) {
		this.country = country;
	}

	public String getLanguage() {
		return language;
	}

	public void setLanguage(String language) {
		this.language = language;
	}

	@Override
	public String toString() {
		return  emdOrderNo + StringUtil.SEPARATOR + orderNo
				+  StringUtil.SEPARATOR + orderSt +  StringUtil.SEPARATOR + channel +  StringUtil.SEPARATOR + site +  StringUtil.SEPARATOR + sourceIp
				+  StringUtil.SEPARATOR + contactNm +  StringUtil.SEPARATOR + contactTel +  StringUtil.SEPARATOR + contactEmail
				+  StringUtil.SEPARATOR + currency +  StringUtil.SEPARATOR + iata +  StringUtil.SEPARATOR
				+ officeNo+ StringUtil.SEPARATOR+createId+ StringUtil.SEPARATOR + DateUtil.toString(createDtm, StringUtil.DATEFORMATE)
				+ StringUtil.SEPARATOR+updateId+ StringUtil.SEPARATOR + DateUtil.toString(updateDtm, StringUtil.DATEFORMATE)+ StringUtil.SEPARATOR+version+ StringUtil.SEPARATOR+deleted
				+  StringUtil.SEPARATOR + FCNY +  StringUtil.SEPARATOR + SCNY+  StringUtil.SEPARATOR + jobOrderNo
				+  StringUtil.SEPARATOR + pointAmount +  StringUtil.SEPARATOR + pointTp +  StringUtil.SEPARATOR + StringUtil.replaceBlank(remark) +  StringUtil.SEPARATOR + phoneCountry
				+  StringUtil.SEPARATOR + refundTicketNo
				;
	}

}
